`timescale 1ns/1ns

`define clock_period 20 //自己定义时钟周期

module counter_top_tb;

//添加激励信号
reg cin; //进位信号
reg clk; //计数基准时钟

//添加输出端口
wire cout;//进位输出
wire [7:0] q;

    //将带仿真模块添加进来,进行端口连接
    counter_top counter0(
	.cin(cin),
	.clk(clk),
	.cout(cout),
	.q(q)
    );

    initial begin
        clk = 1;
    end
    always #(`clock_period/2) clk = ~clk;

    initial begin
        repeat(300)begin//重复300次
            cin = 0;//产生一个脉冲信号
            #(`clock_period*5) cin = 1;
            #(`clock_period) cin = 0;
        end
        #(`clock_period*200);
        $stop;//两百个时钟周期后让系统停下来
    end

    
endmodule